home *** CD-ROM | disk | FTP | other *** search
/ Aminet 1 (Walnut Creek) / Aminet - June 1993 [Walnut Creek].iso / aminet / misc / amag / sh9301e.lha / Maxon-CPP-Demo / Include / rct / rctoldfilerdefs.h < prev    next >
C/C++ Source or Header  |  1993-02-17  |  5KB  |  158 lines

  1. #ifndef RCT_FILER
  2. #define RCT_FILER
  3.  
  4. /* Die Datenstruktur des alten File-Requesters */
  5. /* Die Datenstruktur und die einstellbaren Flags wurden vom
  6.    FileRequester Aufruf der REQUESTER.Library übernommen, so daß
  7.    eine Umstellung auf den RCT-File-Requester sehr einfach gemacht
  8.    werden kann. */
  9.  
  10. /* Definitionen für RCT-FileRequester */
  11.  
  12. /* DSIZE ist die Definition für die Größe des Pfadnamen-Arrays.        */
  13. /* FCHARS steht für die Größe des Dateinamen-Arrays.                        */
  14. /* WILDLENGTH ist die länge des Stings für den Hide- und Showtext.    */
  15.  
  16. /* Durch folgende Flags kann das Aussehen und die Art des Requesters */
  17. /* verändert werden:                                                                 */
  18.  
  19. /* FRQCACHINGM      Wenn das eingelesene Verzeichnis
  20.                          zwischengespeichert und beim nächsten Aufruf
  21.                          des Requesters wieder aufgerufen werden soll */
  22. /* FRQABSOLUTEXYM  in den Felder WindowLeftEdge, WindowTopEdge
  23.                          werden Koordianten angegeben anderenfalls wird
  24.                          der Requester zentiert */
  25. /* FRQCACHEPURGEM  Das zwischengespeicherte Verzeichnis wird
  26.                          neu geladen wenn sich das Datum des Verzeichnisses geändert hat */
  27. /* FRQNOHALFCACHEM Die eingelesenen Dateien werden nicht bis zum
  28.                          nächsten Aufruf zwischengespeichert, wenn sie nicht vollständig
  29.                          eingelesen werden konnten */
  30. /* FRQNOSORTM         Die Dateinamen sollen unsortiert angezeigt
  31.                          werden */
  32. /* FRQNODRAGM         Der Requester kann nciht verschoben oder in
  33.                          den Hinter-/Vordergrund geholt werden */
  34. /* FRQSAVINGM         Im "OK-Gadget" wird der Text "SAVE" angezeigt */
  35. /* FRQLOADINGM      Im "OK-Gadget" wird der text "LOAD" angezeigt */
  36. /* FRQNODEPTHM      Das Fenster soll zwar verschiebbar aber nicht
  37.                          in der Vorder-/Hintergrund stellbar sein. */
  38.  
  39.  
  40. #ifndef    DSIZE
  41. #define    DSIZE 130
  42. #define    FCHARS    30
  43. #endif    /* ifndef DSIZE */
  44.  
  45. #define    WILDLENGTH    30
  46.  
  47. #define    FRQSHOWINFOB      0
  48. #define    FRQEXTSELECTB      1
  49. #define    FRQCACHINGB       2
  50. #define    FRQGETFONTSB      3
  51. #define    FRQINFOGADGETB   4
  52. #define    FRQHIDEWILDSB      5
  53. #define    FRQABSOLUTEXYB   6
  54. #define    FRQCACHEPURGEB   7
  55. #define    FRQNOHALFCACHEB  8
  56. #define    FRQNOSORTB          9
  57. #define    FRQNODRAGB         10
  58. #define    FRQSAVINGB         11
  59. #define    FRQLOADINGB      12
  60. #define    FRQDIRONLYB      13
  61. #define    FRQNODEPTHB      14
  62.  
  63. #define    FRQSHOWINFOM    (1<<FRQSHOWINFOB)
  64. #define    FRQEXTSELECTM    (1<<FRQEXTSELECTB)
  65. #define    FRQCACHINGM     (1<<FRQCACHINGB)
  66. #define    FRQGETFONTSM    (1<<FRQGETFONTSB)
  67. #define    FRQINFOGADGETM (1<<FRQINFOGADGETB)
  68. #define    FRQHIDEWILDSM    (1<<FRQHIDEWILDSB)
  69. #define    FRQABSOLUTEXYM (1<<FRQABSOLUTEXYB)
  70. #define    FRQCACHEPURGEM (1<<FRQCACHEPURGEB)
  71. #define    FRQNOHALFCACHEM    (1<<FRQNOHALFCACHEB)
  72. #define    FRQNOSORTM        (1<<FRQNOSORTB)
  73. #define    FRQNODRAGM        (1<<FRQNODRAGB)
  74. #define    FRQSAVINGM        (1<<FRQSAVINGB)
  75. #define    FRQLOADINGM     (1<<FRQLOADINGB)
  76. #define    FRQDIRONLYM     (1<<FRQDIRONLYB)
  77. #define    FRQNODEPTHM     (1<<FRQNODEPTHB)
  78.  
  79.  
  80.  
  81. /* Die Struktur sieht folgendermaßen aus: */
  82.  
  83.  
  84. struct RCTFileRequester
  85.   {
  86.   UWORD     VersionNumber;         /* Die Versionsnummer der
  87.                                              Library, die beim Programmieren verwendet wird */
  88.  
  89.   char     *Title;                  /* Entweder der Fenstertitel oder
  90.                                              ein besonderes Requestergadget */
  91.   char     *Dir;                     /* Pfad-Array (DSIZE+1) */
  92.   char     *File;                     /* Dateiname-Array (FCHARS+1) */
  93.   char     *PathName;              /* Pfad- und Dateinamen-Array (DSIZE+FCHARS+2) */
  94.  
  95.   struct Window *Window;         /* Window in dem der Requester
  96.                                              angezeigt werden soll oder NULL */
  97.   UWORD     reserved;                 /* wird ignoriert */
  98.   UWORD     numlines;                 /* wird ignoriert */
  99.   UWORD     numcolumns;             /* wird ignoriert */
  100.   UWORD     devcolumns;
  101.   ULONG     Flags;                     /* Definitionen der Flags siehe
  102.                                              oben */
  103.   UWORD     dirnamescolor;         /* wird ignoriert */
  104.   UWORD     filenamescolor;         /* wird ignoriert */
  105.   UWORD     devicenamescolor;     /* wird ignoriert */
  106.   UWORD     fontnamescolor;         /* wird ignoriert */
  107.   UWORD     fontsizescolor;         /* wird ignoriert */
  108.  
  109.   UWORD     detailcolor;             /* wird ignoriert */
  110.   UWORD     blockcolor;             /* wird ignoriert */
  111.   UWORD     gadgettextcolor;      /* wird ignoriert */
  112.   UWORD     textmessagecolor;     /* wird ignoriert */
  113.   UWORD     stringnamecolor;      /* wird ignoriert */
  114.   UWORD     stringgadgetcolor;     /* wird ignoriert */
  115.   UWORD     boxbordercolor;         /* wird ignoriert */
  116.   UWORD     gadgetboxcolor;         /* wird ignoriert */
  117.  
  118.   UWORD     FRU_Stuff[18];         /* Reserviert, sollte NULL sein */
  119.   struct DateStamp DirDateStamp; /* wird ignoriert */
  120.  
  121.   UWORD     WindowLeftEdge;         /* Diese beiden Felder werden
  122.                                              benutzt, um den Requester zu */
  123.   UWORD     WindowTopEdge;         /* positionieren. */
  124.  
  125.   UWORD     FontYSize;              /* wird ignoriert */
  126.   UWORD     FontStyle;              /* wird ignoriert */
  127.  
  128.   ULONG     *reserved1;             /* Reserviert */
  129.   char     Hide[WILDLENGTH+2];  /* Wildcards Text für Dateien die
  130.                                              nicht angezeigt werden sollen */
  131.   char     Show[WILDLENGTH+2];  /* Wildcards Text für Dateien die
  132.                                              angezeigt werden sollen */
  133.   WORD     FileBufferPos;         /* Werte für Stringgadgets */
  134.   WORD     FileDispPos;
  135.   WORD     DirBufferPos;
  136.   WORD     DirDispPos;
  137.   WORD     HideBufferPos;
  138.   WORD     HideDispPos;
  139.   WORD     ShowBufferPos;
  140.   WORD     ShowDispPos;
  141.  
  142.  /**;       Die nachfolgenden Felder sind Privat und sollten aus
  143.               Ihren Programmen nie angesprochen oder genutzt werden */
  144.  
  145.   APTR     privat1;
  146.   APTR     privat2;
  147.   APTR     privat3;
  148.   char     privat4[DSIZE+2];
  149.                                                                                                           /* directory we have file names for. */
  150.   struct FileInfoBlock      *privat6;
  151.   WORD     privat7;
  152.   WORD     privat8;
  153.   WORD     privat9;
  154.   WORD     privat10;
  155.   };
  156.  
  157. #endif
  158.